
Discover what JavaScript is, what you can build with it, and where it runs—from browsers to servers. Compare JavaScript with script and explore uses like web apps and games.
Choose a code editor like Visual Studio Code, install Node, create a basic index.html, set up Live Server, and preview your first JavaScript hello world.
Place the script element at the end of the body to avoid blocking render; learn statements, strings, semicolons, and comments, and log Hello World in the console.
Separate JavaScript from HTML by moving scripts into a dedicated file and referencing it in index.html, exemplifying separation of concerns.
Learn to run JavaScript in Node using the Node runtime and Google's V8 engine to execute index.js from a terminal.
Explore variables as memory boxes that store data and assign each a meaningful name. Learn let versus var, initialization, and the rules about reserved keywords, camel notation, and one-variable-per-line practice.
Declare an interest rate with let, reassign it, and log to the console. Show that constants cannot be reassigned, and default to const while using let only when needed.
Explore primitive value types in JavaScript, including strings, numbers, booleans, undefined, and null. Understand their use and reserved keywords, and preview symbol and reference types later.
Explore how JavaScript uses dynamic typing, where a variable's type is determined at runtime and can change, unlike static languages. Learn about the type operator, numbers, booleans, and undefined.
Explore objects in JavaScript, learning object literals, properties, and how to access them with dot and bracket notation, while noting that arrays and functions come later.
Learn how to use arrays to store lists in JavaScript from scratch. Create arrays with literals, access elements by index, and see how lengths and element types can change dynamically.
Learn how to declare and call functions in JavaScript using the function keyword, pass parameters and arguments, and display messages with console.log.
learn that a function performs a task or calculates a value, returns it, and is used with examples like a square function that logs to the console.
Explore JavaScript operators, including arithmetic, assignment, comparison, logical, and bitwise operators. See how these work with variables and constants to form expressions and logic.
Explore JavaScript arithmetic operators, including addition, subtraction, multiplication, division, remainder, and exponentiation, using expressions with X and Y, and learn pre- and post-increment and decrement behavior.
Learn how assignment operators work by assigning values and using shorthand like += and *= to modify variables, including increment operations and other arithmetic-assignments.
Explore comparison operators in JavaScript for beginners, including relational operators like greater than, less than, and equality checks with triple equals and not equals.
Explore strict and loose equality in JavaScript, learning how === checks both type and value while == coerces types, with examples using numbers, strings, and booleans.
Learn how to implement the ternary operator in JavaScript by determining gold or silver customer status from points, using the condition ? true : false and console logging.
Explore logical operators in JavaScript, including and, or, and not, with practical loan-eligibility examples that show how true and false conditions drive decisions.
Learn how the logical or operator handles non-boolean values, identifying truthy and falsy values, and use short-circuiting to assign default values such as a user color.
Explore operator precedence in JavaScript expressions, showing why 2 + 3 * 4 equals 14 and how parentheses change it to (2 + 3) * 4 equals 20.
Practice swapping the values of two variables using a temporary backup variable, then verify in the console that the values are swapped from red and blue to blue and red.
Explore using expressions and operators with if and else to greet users by the current hour, employing >= and < comparisons to display good morning, good afternoon, or good evening.
Explore how a switch statement compares a user role variable against cases like guest, moderator, or admin, using case blocks, breaks, and an optional default to handle unknown roles.
Learn how to repeat actions in JavaScript with for loops, including the initial expression, a condition, and an increment, and print hello world, odd numbers, and reverse sequences.
Learn how to translate a for loop to a while loop in JavaScript, declaring the loop variable externally, setting a to 0, and printing odd numbers up to five.
Learn how the do while loop in JavaScript differs from the while loop, executing at least once and evaluating the condition at the end, with variable scope considerations.
Identify how infinite loops occur when a loop counter fails to increment, causing endless execution in while, for, and do-while loops and browser crashes.
Explore for in loop to iterate object properties and array elements, use key with dot or bracket notation to access values, and note its limitations before the for of loop.
Learn how the for of loop iterates over array elements, with the loop variable holding each item, enabling simple console logging of colors without indexing.
Explore break and continue in JavaScript loops. Exit the loop with break; continue jumps to the next iteration, demonstrating 0–10 and odd numbers, and continue is discouraged.
Write a function that takes two numbers and returns the max of the two using an if statement, then refactor to a conditional operator and test with different inputs.
Implement a landscape(width, height) function that uses the conditional operator to return width > height, avoiding explicit true or false returns, and test with 800x600 (true) and 300-wide (false).
Implement a fizzbuzz function that returns fizz for multiples of three, buzz for multiples of five, fizzbuzz for both, or the input otherwise, with non-numeric inputs yielding not a number.
Implement a check speed function that calculates demerit points for every five kilometers above the 70 km/h limit using Math.floor, and suspend a license at 12 points.
Write a showNumbers function with a limit that prints 0 to limit and labels each number as even or odd using a for loop and i modulus two checks.
Create a function count truthy that takes an array and returns the number of truthy elements, using a for loop and avoiding explicit falsy checks.
Create a show properties function that iterates an object with a for-in loop, uses typeof to filter string properties, and logs each key and its string value.
Create a sum function that returns the total of multiples of three and five up to a limit using a for loop, modulus checks, and returning the accumulated sum.
Calculate a student's average from a marks array using a for loop, map it to a grade with ranges, and refactor into single-responsibility functions for average calculation and grade mapping.
Explore how nested loops print a star pattern: a for loop controls rows and an inner loop appends stars, then console.log outputs each row.
Implement a show primes function to list primes up to a limit, learn prime versus composite, and refactor with an is prime helper to follow the single responsibility principle.
Explore constructor functions in JavaScript, learn how this keyword and the new operator create objects with radius and draw methods, and compare to factory functions.
JavaScript objects are dynamic: you can add properties like color or methods like draw and delete them, while const prevents reassignment.
Discover how every JavaScript object has a constructor property referencing the function used to create it, including objects created from literals and the idea of built-in constructors.
Explore how JavaScript treats functions as objects, including properties and methods like call, apply, and bind, the function constructor and new operator, and the this context.
JavaScript divides primitives and objects, showing primitives copy by value and objects copy by reference. The lecture illustrates independent primitives vs shared object references.
Explore how to enumerate object properties in JavaScript using for in, for of, with Object.keys and Object.entries, and check property existence with the in operator.
Learn to clone objects in JavaScript by enumerating properties with a for-in loop, then using Object.assign or the spread operator to copy properties and methods to a new object.
Explore how JavaScript automatically manages memory through a background garbage collector that deallocates unused objects, freeing developers from manual allocation and deallocation.
Explore the built-in JavaScript math object, including pi and methods like random, round, max, and min. See a quick demo of generating random numbers in a range.
Distinguish string primitives from string objects and apply common methods such as length, includes, indexOf, replace, trim, and case conversion. Explore escape notation, split, and template literals.
Learn how template literals in JavaScript from ES6 use backticks to write multiline strings, avoiding manual concatenation and escaping quotes, so code output matches the console display.
Explore the JavaScript date object: create dates with constructors, use string and numeric values, understand zero-based months, and format with toDateString, toTimeString, and toISOString for client-server data.
Create an address object with street, city, and zip code, then implement a show address function that enumerates and displays each property using a for-in loop and bracket notation.
Learn to create an address object using a factory function and a constructor function, with street, city, and zipcode, demonstrating object creation patterns.
Implement two javascript functions: areEqual to compare all address properties, and a second to check if two addresses reference the same object using strict equality.
Create a blog post object using object literal syntax, defining title, body, author, views, is live, with comments as an array of objects with author and body properties.
Define a post constructor function for a blogging engine that initializes title, body, and author, while defaulting views to zero, comments to an empty array, and is live to false.
Master core array operations in JavaScript from scratch for beginners, including adding, finding, removing, splitting, and combining elements. Watch the lectures and complete exercises to build practical programming skills.
Declares a constant numbers array and demonstrates adding elements with push, unshift, and splice, showing end, beginning, and middle insertions while modifying array content without reassigning the constant.
Discover how to locate elements in an array using indexOf, lastIndexOf, and includes for primitive values, and learn how the element type and a starting index affect results.
Differentiate primitives from reference types and use find with a predicate to locate a course object in an array, returning the first match or undefined, and findIndex for the index.
Explore how arrow functions simplify callback usage in ES6 by removing the function keyword, using a fat arrow, optional parentheses for a single parameter, and concise one-line returns.
Remove elements from a JavaScript array by using pop, shift, and splice, and verify changes with console logs, learning how to remove last, first, or middle elements by index.
Learn to empty an array in JavaScript by reassigning to a new array (requires let) or by truncating with length zero, splice, or a pop loop, with performance notes.
Use concat to combine two arrays into a new array, then use slice to extract parts with start and end indices, noting primitives copy by value and objects by reference.
Learn to use the spread operator to combine two arrays and insert elements flexibly, compare it to concat, and copy arrays with spread for cleaner, flexible array manipulation.
Learn how to iterate arrays in JavaScript using for...of, forEach, and for in loops, including arrow function syntax and callback parameters, to log elements and their indices.
Join array elements with the join method, using an optional string separator to create a string. Use split on strings to convert to arrays and form URL slugs with hyphens.
Explore sorting arrays with the sort method, including numeric and string arrays; learn how to sort objects with a comparator, handle case sensitivity, and use reverse for reversing order.
Learn to use the JavaScript every and some methods to test array elements with callbacks, returning true or false based on all or any matches, and noting cross-browser support.
Learn to filter an array with the filter method using a callback to extract positive numbers, and convert to a concise arrow function for clean code.
Map each array element to a new value to build html markup with list items, using an arrow function and join, and chaining filter and map.
Learn how to sum an array of numbers using a traditional loop and the reduce method, with an accumulator and current value guiding the computation.
Write a function called array from range that takes min and max, loops from min to max, pushes each value, and returns the resulting array, including negative ranges.
Develop a custom includes function for arrays that takes an array and a search element, uses a for-of loop to check for a match, and returns true or false.
Learn to implement a JavaScript function named accept that filters an array by excluding values listed in another array, returning a new output array.
Move elements in an array with a move function; the original array remains unchanged. Clone with the spread operator, remove and reinsert with splice, and use console.error for invalid offsets.
Implement a count occurrences function in JavaScript to tally how many times a search element appears in an array, first with a simple loop, then with reduce.
Master how to find the largest value in an array and handle empty arrays by returning undefined, using a for loop and a reduce with accumulator and current.
Declare a movies array of objects, filter 2018 entries with a rating above four, sort by rating descending, and map to titles for console output (B and A).
Compare function declarations and function expressions in JavaScript, showing how to define, name, and reference functions, including anonymous and named expressions, and the role of semicolons.
Explore hoisting, where the JavaScript engine moves function declarations to the top, enabling calls before definition, while function expressions still trigger a reference error when invoked early.
Explore how JavaScript handles function arguments as a dynamic, flexible list using the arguments object, including length, iteration with for of, and summing an arbitrary number of values.
Explore rest operator in JavaScript, using three dots to collect arguments into an array. Contrast it with the spread operator, and sum prices with reduce for a discount.
Explore default values for function parameters in JavaScript using the logical or approach and CS6 syntax, with a principal, rate, and years total interest calculation example.
Welcome to your first step on the path to becoming a JavaScript expert! In this course I'll be teaching you my absolute favorite language (JavaScript!) from the very beginning .
Okay, you might be asking , What is JavaScript?
JavaScript is one of the most popular programming languages in the world, and growing faster than any other programming language. As a developer, you can use JavaScript to build web and mobile apps, real-time networking apps, command-line tools, and games.
I'll give 4 reasons to Learn JavaScript :
1)JavaScript is a key tool for front-end, back-end, and full-stack developers.
2)The average annual salary for a JavaScript developer is $72,000.
3)Companies like Walmart, Netflix, and PayPal run big internal applications around JavaScript.
4)Having strong JavaScript knowledge will help you land your dream job .
Here's why this course is worth your time:
It's interactive - I give you a chance to try every problem before I show you my solution.
Every single problem has a complete solution walkthrough video as well as accompanying solution file.
I cover helpful "tips and tricks" to solve common problems, but we also focus on building an approach to ANY problem.
Are you looking to level-up your developer skills? Sign up today!
ARE YOU READY TO MAKE THE FIRST STEP TOWARDS BECOMING A WEB OR MOBILE DEVELOPER?
Stop wasting your time on disconnected tutorials or super long courses. Enroll in the course to get started. With a 30-day money-back guarantee, what do you have to lose?